1. Field
Embodiments described herein relate generally to image processing apparatus.
2. Description of Related Art
To create a high-quality computer graphics image, the importance of the high dynamic-range rendering (HDR) techniques is growing. In the HDR, the color of each pixel needs to be processed in a large dynamic range exceeding a range of 0 to 1.0.
Here, R16G16B16A16_FLOAT is a widely-used format to represent the brightness of each RGB component of pixels in a frame buffer in a 16-bit floating-point format (5 bits for the exponent, 11 bits for the significand). However, in this method, 3×16 bits are needed to represent the brightness of RGB components in total. Accordingly, when an alpha component for representing the transparency is also taken into consideration, 64 bits are consumed per pixel, and thereby the needs for the memory capacity and the memory bandwidth are increased.
To decrease such memory capacity and memory bandwidth by half, several formats are also proposed to represent each pixel by 32 bits. For example, in DirectX 10 of Microsoft Corporation, floating-point based formats such as R9G9B9E5_SHAREDEXP and R11G11B10_FLOAT are defined. Moreover, in a commercial game console, the Xbox 360, a format called R10G10B10A2_FLOAT is used.
Furthermore, for example, Patent Document discloses the following method. Specifically, an image is divided into multiple image blocks; color information and luminance information on each pixel in each image block in a high dynamic-range value of pixels are separated; and the color information on the pixels in the image block and the luminance information on the pixels in the image block are compressed independently from each other.
However, R9G9B9E5_SHAREDEXP has a problem that, since the exponent is common to RGB components, the precision is extremely lowered when the color is saturated.
Moreover, R11G11B10_FLOAT has a problem that, since the significand for a B channel is as small as 5 bits, Mach bands may be perceived.
In a case of R10G10B10A2_FLOAT, the scales of encoding and decoding circuits do not have to be larger. However, R10G10B10A2_FLOAT also has a problem that, since only 3 bits are assigned to the exponent, there are shortages of dynamic range and precision, and thereby Mach bands may be perceived.